rtp_sources = [
  'dboolhuff.c',
  'fnv1hash.c',
  'gstbuffermemory.c',
  'gstrtpelement.c',
  'gstrtp.c',
  'gstrtpchannels.c',
  'gstrtpac3depay.c',
  'gstrtpac3pay.c',
  'gstrtpbvdepay.c',
  'gstrtpbvpay.c',
  'gstrtpceltdepay.c',
  'gstrtpceltpay.c',
  'gstrtpdvdepay.c',
  'gstrtpdvpay.c',
  'gstrtpgstdepay.c',
  'gstrtpgstpay.c',
  'gstrtpilbcdepay.c',
  'gstrtpilbcpay.c',
  'gstrtpklvdepay.c',
  'gstrtpklvpay.c',
  'gstrtpmpadepay.c',
  'gstrtpmpapay.c',
  'gstrtpmparobustdepay.c',
  'gstrtpmpvdepay.c',
  'gstrtpmpvpay.c',
  'gstrtpopuspay.c',
  'gstrtpopusdepay.c',
  'gstrtppassthroughpay.c',
  'gstrtppcmadepay.c',
  'gstrtppcmudepay.c',
  'gstrtppcmupay.c',
  'gstrtppcmapay.c',
  'gstrtpg722depay.c',
  'gstrtpg722pay.c',
  'gstrtpg723depay.c',
  'gstrtpg723pay.c',
  'gstrtpg726pay.c',
  'gstrtpg726depay.c',
  'gstrtpg729pay.c',
  'gstrtpg729depay.c',
  'gstrtpgsmdepay.c',
  'gstrtpgsmpay.c',
  'gstrtpamrdepay.c',
  'gstrtpamrpay.c',
  'gstrtphdrext-colorspace.c',
  'gstrtph261depay.c',
  'gstrtph261pay.c',
  'gstrtph263pdepay.c',
  'gstrtph263ppay.c',
  'gstrtph263depay.c',
  'gstrtph263pay.c',
  'gstrtph264depay.c',
  'gstrtph264pay.c',
  'gstrtph265depay.c',
  'gstrtph265pay.c',
  'gstrtpj2kdepay.c',
  'gstrtpj2kpay.c',
  'gstrtpjpegdepay.c',
  'gstrtpjpegpay.c',
  'gstrtpL8depay.c',
  'gstrtpL8pay.c',
  'gstrtpL16depay.c',
  'gstrtpL16pay.c',
  'gstrtpL24depay.c',
  'gstrtpL24pay.c',
  'gstrtpldacpay.c',
  'gstasteriskh263.c',
  'gstrtpmp1sdepay.c',
  'gstrtpmp2tdepay.c',
  'gstrtpmp2tpay.c',
  'gstrtpmp4vdepay.c',
  'gstrtpmp4vpay.c',
  'gstrtpmp4gdepay.c',
  'gstrtpmp4gpay.c',
  'gstrtpmp4adepay.c',
  'gstrtpmp4apay.c',
  'gstrtpqcelpdepay.c',
  'gstrtpqdmdepay.c',
  'gstrtpsbcdepay.c',
  'gstrtpsbcpay.c',
  'gstrtpsirenpay.c',
  'gstrtpsirendepay.c',
  'gstrtpspeexdepay.c',
  'gstrtpspeexpay.c',
  'gstrtpsv3vdepay.c',
  'gstrtptheoradepay.c',
  'gstrtptheorapay.c',
  'gstrtpvorbisdepay.c',
  'gstrtpvorbispay.c',
  'gstrtpvp8depay.c',
  'gstrtpvp8pay.c',
  'gstrtpvp9depay.c',
  'gstrtpvp9pay.c',
  'gstrtpvrawdepay.c',
  'gstrtpvrawpay.c',
  'gstrtpstreampay.c',
  'gstrtpstreamdepay.c',
  'gstrtputils.c',
  'rtpulpfeccommon.c',
  'gstrtpulpfecdec.c',
  'gstrtpulpfecenc.c',
  'rtpredcommon.c',
  'gstrtpredenc.c',
  'gstrtpreddec.c',
  'rtpstorage.c',
  'rtpstoragestream.c',
  'gstrtpstorage.c',
  'gstrtpisacdepay.c',
  'gstrtpisacpay.c',
]

rtp_headers = [
  'gstrtpgsmdepay.h',
  'gstrtpklvpay.h',
  'gstrtpac3pay.h',
  'gstrtpg726depay.h',
  'gstrtpmp4vpay.h',
  'gstrtpgstpay.h',
  'gstrtpj2kcommon.h',
  'gstrtppcmadepay.h',
  'gstrtph263pay.h',
  'gstrtpg729depay.h',
  'gstrtpbvpay.h',
  'gstrtpreddec.h',
  'gstrtpldacpay.h',
  'gstrtph263depay.h',
  'gstrtpulpfecdec.h',
  'gstrtpg726pay.h',
  'gstrtph264pay.h',
  'rtpulpfeccommon.h',
  'gstrtpdvdepay.h',
  'gstrtpL24pay.h',
  'gstrtpceltpay.h',
  'gstrtpvp9depay.h',
  'gstrtpamrdepay.h',
  'gstrtpjpegdepay.h',
  'gstrtpulpfecenc.h',
  'gstrtpmpvdepay.h',
  'gstrtppcmapay.h',
  'gstrtpmpadepay.h',
  'gstrtpspeexpay.h',
  'gstrtpmp2tdepay.h',
  'gstrtpqcelpdepay.h',
  'gstrtpdvpay.h',
  'gstrtpilbcdepay.h',
  'gstrtpsbcdepay.h',
  'rtpredcommon.h',
  'gstrtpvp9pay.h',
  'gstrtpmp4gdepay.h',
  'gstrtpL8depay.h',
  'gstrtph265pay.h',
  'gstrtpvp8pay.h',
  'gstrtpmp2tpay.h',
  'gstrtpmp4gpay.h',
  'gstrtpmp1sdepay.h',
  'gstrtpvrawdepay.h',
  'gstrtptheoradepay.h',
  'gstrtppcmupay.h',
  'gstrtpsbcpay.h',
  'gstrtpstreampay.h',
  'gstrtpredenc.h',
  'gstrtpj2kdepay.h',
  'gstrtpgsmpay.h',
  'gstbuffermemory.h',
  'gstrtpstorage.h',
  'gstrtpklvdepay.h',
  'gstrtpmp4vdepay.h',
  'gstrtpopusdepay.h',
  'gstrtpac3depay.h',
  'gstrtpgstdepay.h',
  'gstrtphdrext-colorspace.h',
  'gstrtph265types.h',
  'gstrtpopuspay.h',
  'gstrtpstreamdepay.h',
  'gstrtpj2kpay.h',
  'gstrtpmpapay.h',
  'dboolhuff.h',
  'gstrtph261depay.h',
  'gstrtpsirenpay.h',
  'gstrtppcmudepay.h',
  'gstrtpjpegpay.h',
  'rtpstoragestream.h',
  'gstrtph265depay.h',
  'gstrtpg729pay.h',
  'gstrtpL16pay.h',
  'gstrtph263ppay.h',
  'gstrtpg723pay.h',
  'gstrtpisacdepay.h',
  'gstrtpvorbisdepay.h',
  'gstrtpmpvpay.h',
  'gstrtpg722pay.h',
  'gstrtptheorapay.h',
  'gstrtph261pay.h',
  'gstrtpilbcpay.h',
  'gstrtpvorbispay.h',
  'gstrtpmparobustdepay.h',
  'rtpstorage.h',
  'gstrtph263pdepay.h',
  'gstrtputils.h',
  'gstasteriskh263.h',
  'gstrtpbvdepay.h',
  'gstrtpL16depay.h',
  'gstrtpg722depay.h',
  'gstrtpL8pay.h',
  'gstrtpqdmdepay.h',
  'gstrtpL24depay.h',
  'gstrtpg723depay.h',
  'gstrtpchannels.h',
  'gstrtph264depay.h',
  'gstrtpmp4adepay.h',
  'gstrtpsv3vdepay.h',
  'gstrtpmp4apay.h',
  'gstrtpelements.h',
  'gstrtpspeexdepay.h',
  'gstrtpceltdepay.h',
  'gstrtpamrpay.h',
  'gstrtpsirendepay.h',
  'fnv1hash.h',
  'gstrtppassthroughpay.h',
  'gstrtpvrawpay.h',
  'gstrtpvp8depay.h',
  'gstrtpisacpay.h',
]

rtp_args = [
  '-Dvp8_norm=gst_rtpvp8_vp8_norm',
  '-Dvp8dx_start_decode=gst_rtpvp8_vp8dx_start_decode',
  '-Dvp8dx_bool_decoder_fill=gst_rtpvp8_vp8dx_bool_decoder_fill',
]

doc_sources = []
foreach s: rtp_sources + rtp_headers
  doc_sources += meson.current_source_dir() / s
endforeach

plugin_sources += {
  'rtp': pathsep.join(doc_sources)
}

if get_option('rtp').disabled()
  subdir_done()
endif

gstrtp = library('gstrtp',
  rtp_sources,
  c_args : gst_plugins_good_args + rtp_args,
  include_directories : [configinc],
  dependencies : [gstbase_dep, gstaudio_dep, gstvideo_dep, gsttag_dep,
                  gstrtp_dep, gstpbutils_dep, libm],
  install : true,
  install_dir : plugins_install_dir,
)
plugins += [gstrtp]
